package cn.congine.wizarpos.mall.model;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;

@Entity
@Table(name = "mrt_ticket_def")
public class MrtTicketDef extends BaseEntity {
	private static final long serialVersionUID = -2423779636705430461L;

	// 唯一标识
	@Id
	@Column(name = "id")
	private String id;

	// 卡券码
	@Column(name = "ticket_code")
	private String ticketCode;

	// 慧商户ID
	@Column(name = "mid")
	private String mid;

	// 卡券名称
	@Column(name = "ticket_name")
	private String ticketName;

	// 卡券金额
	@Column(name = "balance")
	private String balance;

	// 是否启用 1为启用 0为不启用 
	@Column(name = "used_flag")
	private String usedFlag;

	// 微信卡券审核标记 0待审核 1 审核通过 2 审核未通过
	@Column(name = "wx_audit_flag")
	private String wxAuditFlag;//add xudongdong
	
	// 有效期，单位：天。-1表示永久有效
	@Column(name = "valid_period")
	private String validPeriod;

	private int vp;//add xudongdong
	
	// 描述信息
	@Column(name = "description")
	private String description;

	// 添加时间
	@Column(name = "create_time")
	private String createTime;

	// state
	@Column(name = "state")
	private char state;

	// 微信券标识（1:微信卡券，0:非微信卡券）
	@Column(name = "wx_flag")
	private char wxFlag;

	// 微信卡券的code_id
	@Column(name = "wx_code_id")
	private String wxCodeId;

	// 红包发放数量
	@Column(name = "hb_bonus_num")
	private Integer hbBonusNum;

	// 红包领用数量
	@Column(name = "hb_use_num")
	private Integer hbUseNum;

	/**
	 * 微信卡券是否自定义code  0否 1是 
	 */
	private String wxCustomCode;
	
	/**
	 * 0 代金券 1折扣券 2礼品券 3团购券 4优惠券5.通用券
	 */
	private String ticketType;
	
	/**
	 * 券的子标题
	 */
	private String subTitle;
	/**
	 * 客服电话
	 */
	private String servicePhone;
	/**
	 * 最大领取数
	 */
	private String getLimit;
	/**
	 * 是否可以转赠 0 是 1 否
	 */
	private String canGiveFriend;
	/**
	 * 是否(指定)绑定用户 0 是 1 否
	 */
	private String bindOpenid;
	/**
	 * 券的库存数量
	 */
	private Long quantity;
	/**
	 * 起始时间戳   time_flag 为1生效
	 */
	private Long beginTimestamp;
	/**
	 * 截至时间戳 time_flag 为1 生效
	 */
	private Long endTimestamp;
	/**
	 * 0:固定时长 1:时间段 
	 */
	private String timeFlag;
	/**
	 * 使用提醒
	 */
	private String notice;
	/**
	 * 默认详情
	 */
	private String defaultDetail;
	/**
	 * 折扣券专用 比例参考微信 如：7折 =30
	 */
	private Integer discount;
	/**
	 * 礼品券专用
	 */
	private String gift;
	/**
	 * 启用金额 代金券专用单位分
	 */
	private Long leastCost;
	/**
	 * 减免金额  代金券专用 单位分
	 */
	private Long reduceCost;
	/**
	 * 开始生效天数
	 */
	private Long fixedBeginTerm;
	/**
	 * 微信卡券颜色
	 */
	private String color;
	/**
	 * 卡券领取页面是否可分享，1：可以，0：否（默认）
	 */
	private String canShare;
	/**
	 * 1:文本，2：一维码，3：二维码
	 */
	private String codeType;
	/**
	 * 开卡字段
	 */
	private String activateUserForm;
	/**
	 * 券上架标识(0 不上架(默认) 1 上架)
	 */
	private String ticketRackFlag;
	/**
	 * 券售价
	 */
	private Integer ticketPrice;
	/**
	 * 券图片
	 */
	private String picUrl;	
	
	
	
	public String getServicePhone()
	{
		return servicePhone;
	}

	public void setServicePhone(String servicePhone)
	{
		this.servicePhone = servicePhone;
	}

	public String getGetLimit()
	{
		return getLimit;
	}

	public void setGetLimit(String getLimit)
	{
		this.getLimit = getLimit;
	}

	public String getCanGiveFriend()
	{
		return canGiveFriend;
	}

	public void setCanGiveFriend(String canGiveFriend)
	{
		this.canGiveFriend = canGiveFriend;
	}

	public String getBindOpenid()
	{
		return bindOpenid;
	}

	public void setBindOpenid(String bindOpenid)
	{
		this.bindOpenid = bindOpenid;
	}

	public Long getQuantity()
	{
		return quantity;
	}

	public void setQuantity(Long quantity)
	{
		this.quantity = quantity;
	}

	public Long getBeginTimestamp()
	{
		return beginTimestamp;
	}

	public void setBeginTimestamp(Long beginTimestamp)
	{
		this.beginTimestamp = beginTimestamp;
	}

	public Long getEndTimestamp()
	{
		return endTimestamp;
	}

	public void setEndTimestamp(Long endTimestamp)
	{
		this.endTimestamp = endTimestamp;
	}

	public String getTimeFlag()
	{
		return timeFlag;
	}

	public void setTimeFlag(String timeFlag)
	{
		this.timeFlag = timeFlag;
	}

	public String getNotice()
	{
		return notice;
	}

	public void setNotice(String notice)
	{
		this.notice = notice;
	}

	public String getDefaultDetail()
	{
		return defaultDetail;
	}

	public void setDefaultDetail(String defaultDetail)
	{
		this.defaultDetail = defaultDetail;
	}

	public Integer getDiscount()
	{
		return discount;
	}

	public void setDiscount(Integer discount)
	{
		this.discount = discount;
	}

	public String getGift()
	{
		return gift;
	}

	public void setGift(String gift)
	{
		this.gift = gift;
	}

	public Long getLeastCost()
	{
		return leastCost;
	}

	public void setLeastCost(Long leastCost)
	{
		this.leastCost = leastCost;
	}

	public Long getReduceCost()
	{
		return reduceCost;
	}

	public void setReduceCost(Long reduceCost)
	{
		this.reduceCost = reduceCost;
	}

	public Long getFixedBeginTerm()
	{
		return fixedBeginTerm;
	}

	public void setFixedBeginTerm(Long fixedBeginTerm)
	{
		this.fixedBeginTerm = fixedBeginTerm;
	}

	public String getColor()
	{
		return color;
	}

	public void setColor(String color)
	{
		this.color = color;
	}

	public String getCanShare()
	{
		return canShare;
	}

	public void setCanShare(String canShare)
	{
		this.canShare = canShare;
	}

	public String getCodeType()
	{
		return codeType;
	}

	public void setCodeType(String codeType)
	{
		this.codeType = codeType;
	}

	public String getActivateUserForm()
	{
		return activateUserForm;
	}

	public void setActivateUserForm(String activateUserForm)
	{
		this.activateUserForm = activateUserForm;
	}

	public String getTicketRackFlag()
	{
		return ticketRackFlag;
	}

	public void setTicketRackFlag(String ticketRackFlag)
	{
		this.ticketRackFlag = ticketRackFlag;
	}

	public Integer getTicketPrice()
	{
		return ticketPrice;
	}

	public void setTicketPrice(Integer ticketPrice)
	{
		this.ticketPrice = ticketPrice;
	}

	public String getPicUrl()
	{
		return picUrl;
	}

	public void setPicUrl(String picUrl)
	{
		this.picUrl = picUrl;
	}

	public String getSubTitle()
	{
		return subTitle;
	}

	public void setSubTitle(String subTitle)
	{
		this.subTitle = subTitle;
	}

	public String getWxCustomCode()
	{
		return wxCustomCode;
	}

	public void setWxCustomCode(String wxCustomCode)
	{
		this.wxCustomCode = wxCustomCode;
	}

	public String getTicketType()
	{
		return ticketType;
	}

	public void setTicketType(String ticketType)
	{
		this.ticketType = ticketType;
	}

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getTicketCode() {
		return ticketCode;
	}

	public void setTicketCode(String ticketCode) {
		this.ticketCode = ticketCode;
	}

	public String getMid() {
		return mid;
	}

	public void setMid(String mid) {
		this.mid = mid;
	}

	public String getTicketName() {
		return ticketName;
	}

	public void setTicketName(String ticketName) {
		this.ticketName = ticketName;
	}

	public String getBalance() {
		return balance;
	}

	public void setBalance(String balance) {
		this.balance = balance;
	}

	public String getUsedFlag() {
		return usedFlag;
	}

	public void setUsedFlag(String usedFlag) {
		this.usedFlag = usedFlag;
	}

	public String getWxAuditFlag() {
		return wxAuditFlag;
	}

	public void setWxAuditFlag(String wxAuditFlag) {
		this.wxAuditFlag = wxAuditFlag;
	}

	public String getValidPeriod() {
		return validPeriod;
	}

	public void setValidPeriod(String validPeriod) {
		this.validPeriod = validPeriod;
	}

	@Transient
	public int getVp() {
		return vp;
	}

	public void setVp(int vp) {
		this.vp = vp;
	}
	
	public String getDescription() {
		return description;
	}

	public void setDescription(String description) {
		this.description = description;
	}

	public String getCreateTime() {
		return createTime;
	}

	public void setCreateTime(String createTime) {
		this.createTime = createTime;
	}

	public char getState() {
		return state;
	}

	public void setState(char state) {
		this.state = state;
	}

	public char getWxFlag() {
		return wxFlag;
	}

	public void setWxFlag(char wxFlag) {
		this.wxFlag = wxFlag;
	}

	public String getWxCodeId() {
		return wxCodeId;
	}

	public void setWxCodeId(String wxCodeId) {
		this.wxCodeId = wxCodeId;
	}

	public Integer getHbBonusNum() {
		return hbBonusNum;
	}

	public void setHbBonusNum(Integer hbBonusNum) {
		this.hbBonusNum = hbBonusNum;
	}

	public Integer getHbUseNum() {
		return hbUseNum;
	}

	public void setHbUseNum(Integer hbUseNum) {
		this.hbUseNum = hbUseNum;
	}
}
